package org.jeecg.modules.business.doc.outbound.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.jeecgframework.poi.excel.annotation.Excel;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @Description: 出库单-物料
 * @Author: jeecg-boot
 * @Date:   2023-08-09
 * @Version: V1.0
 */
@ApiModel(value="wms_out_receipt_material对象", description="出库单-物料")
@Data
@TableName("wms_out_receipt_material")
public class WmsOutReceiptMaterial implements Serializable {
    private static final long serialVersionUID = 1L;

	/**主键*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "主键")
    private String id;
	/**创建人*/
    @ApiModelProperty(value = "创建人")
    private String createBy;
	/**创建日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建日期")
    private Date createTime;
	/**更新人*/
    @ApiModelProperty(value = "更新人")
    private String updateBy;
	/**更新日期*/
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新日期")
    private Date updateTime;
	/**所属部门*/
    @ApiModelProperty(value = "所属部门")
    private String sysOrgCode;
	/**物料id*/
	@Excel(name = "物料id", width = 15, dictTable = "wms_basic_material", dicCode = "id", dicText = "name")
    @ApiModelProperty(value = "物料id")
    private String wmsBasicMaterialId;
	/**批次号*/
	@Excel(name = "批次号", width = 15)
    @ApiModelProperty(value = "批次号")
    private String batchCode;
	/**应发数量*/
	@Excel(name = "应发数量", width = 15)
    @ApiModelProperty(value = "应发数量")
    private java.math.BigDecimal payableQuantity;
	/**库存数量*/
	@Excel(name = "出库数量", width = 15)
    @ApiModelProperty(value = "出库数量")
    private java.math.BigDecimal outboundQuantity;
	/**仓库*/
	@Excel(name = "仓库", width = 15, dictTable = "wms_basic_warehouse", dicCode = "id", dicText = "name")
    @ApiModelProperty(value = "仓库id")
    private String wmsBasicWarehouseId;
	/**库区*/
	@Excel(name = "库区", width = 15, dictTable = "wms_basic_warehouse_area", dicCode = "id", dicText = "name")
    @ApiModelProperty(value = "库区id")
    private String wmsBasicWarehouseAreaId;
	/**库位*/
	@Excel(name = "库位", width = 15, dictTable = "wms_basic_warehouse_area_location", dicCode = "id", dicText = "name")
    @ApiModelProperty(value = "库位id")
    private String wmsBasicWarehouseAreaLocationId;
	/**辅数量*/
	@Excel(name = "辅数量", width = 15)
    @ApiModelProperty(value = "辅数量")
    private BigDecimal assistQuantity;
	/**钢卷号*/
	@Excel(name = "钢卷号", width = 15)
    @ApiModelProperty(value = "钢卷号")
    private String steelCoilNumber;
	/**外径*/
	@Excel(name = "外径", width = 15)
    @ApiModelProperty(value = "外径")
    private java.math.BigDecimal outsideDiameter;
	/**宽度*/
	@Excel(name = "宽度", width = 15)
    @ApiModelProperty(value = "宽度")
    private java.math.BigDecimal width;
	/**长度*/
	@Excel(name = "长度", width = 15)
    @ApiModelProperty(value = "长度")
    private java.math.BigDecimal length;
	/**厚度*/
	@Excel(name = "厚度", width = 15)
    @ApiModelProperty(value = "厚度")
    private java.math.BigDecimal thickness;
	/**牌号*/
	@Excel(name = "牌号", width = 15)
    @ApiModelProperty(value = "牌号")
    private String shopSign;
	/**外观等级*/
	@Excel(name = "外观等级", width = 15)
    @ApiModelProperty(value = "外观等级")
    private String appearanceGrade;
	/**铁损*/
	@Excel(name = "铁损", width = 15)
    @ApiModelProperty(value = "铁损")
    private BigDecimal ironLoss;
	/**实测片厚*/
	@Excel(name = "实测片厚", width = 15)
    @ApiModelProperty(value = "实测片厚")
    private BigDecimal measuredThickness;
	/**实测铁损*/
	@Excel(name = "实测铁损", width = 15)
    @ApiModelProperty(value = "实测铁损")
    private BigDecimal measuredIronLoss;
	/**硅钢等级*/
	@Excel(name = "硅钢等级", width = 15)
    @ApiModelProperty(value = "硅钢等级")
    private String siliconGrade;
	/**刻痕等级*/
	@Excel(name = "刻痕等级", width = 15)
    @ApiModelProperty(value = "刻痕等级")
    private String score;
	/**原始净重*/
	@Excel(name = "原始净重", width = 15)
    @ApiModelProperty(value = "原始净重")
    private BigDecimal originalWeight;
	/**实称净重*/
	@Excel(name = "实称净重", width = 15)
    @ApiModelProperty(value = "实称净重")
    private BigDecimal measuredWeight;
	/**载具*/
	@Excel(name = "载具", width = 15)
    @ApiModelProperty(value = "载具")
    private String vehicle;
	/**序列号*/
	@Excel(name = "序列号", width = 15)
    @ApiModelProperty(value = "序列号")
    private String serialNumber;
	/**销售订单号*/
	@Excel(name = "销售订单号", width = 15)
    @ApiModelProperty(value = "销售订单号")
    private String saleOrderNumber;
	/**销售订单行号*/
	@Excel(name = "销售订单行号", width = 15)
    @ApiModelProperty(value = "销售订单行号")
    private String saleOrderLineNumber;
	/**生产工单号*/
	@Excel(name = "生产工单号", width = 15)
    @ApiModelProperty(value = "生产工单号")
    private String productNumber;
	/**生产工单行号*/
	@Excel(name = "生产工单行号", width = 15)
    @ApiModelProperty(value = "生产工单行号")
    private String productLineNumber;
	/**上游单据*/
	@Excel(name = "上游单据", width = 15)
    @ApiModelProperty(value = "上游单据")
    private String upstreamDocuments;
	/**上游单号*/
	@Excel(name = "上游单号", width = 15)
    @ApiModelProperty(value = "上游单号")
    private String upstreamNumber;
	/**上游行号*/
	@Excel(name = "上游行号", width = 15)
    @ApiModelProperty(value = "上游行号")
    private String upstreamLineNumber;
	/**来源系统单号*/
	@Excel(name = "来源系统单号", width = 15)
    @ApiModelProperty(value = "来源系统单号")
    private String originalSystemNumber;
	/**来源系统行号*/
	@Excel(name = "来源系统行号", width = 15)
    @ApiModelProperty(value = "来源系统行号")
    private String originalSystemLineNumber;
	/**毛重*/
	@Excel(name = "毛重", width = 15)
    @ApiModelProperty(value = "毛重")
    private java.math.BigDecimal grossWeight;
	/**应发数量（辅单位）*/
	@Excel(name = "应发数量（辅单位）", width = 15)
    @ApiModelProperty(value = "应发数量（辅单位）")
    private BigDecimal payableQuantityAssist;
	/**出库单id*/
    @ApiModelProperty(value = "出库单id")
    private String wmsOutReceiptId;
	/**逻辑删除*/
	@Excel(name = "逻辑删除", width = 15)
    @ApiModelProperty(value = "逻辑删除")
    @TableLogic
    private Integer delFlag;
	/**租户id*/
	@Excel(name = "租户id", width = 15)
    @ApiModelProperty(value = "租户id")
    private Integer tenantId;
    @Excel(name = "库存单位", width = 15, dictTable = "wms_basic_unit", dicCode = "id", dicText = "name")
    @ApiModelProperty(value = "库存单位id")
    private String wmsBasicUnitId;
    @ApiModelProperty(value = "备注")
    private String remark;

    /**
     * 物料编码
     */
    @ApiModelProperty(value = "物料编码")
    private String materialCode;

    /**规格型号*/
    @Excel(name = "规格型号", width = 15)
    @ApiModelProperty(value = "规格型号")
    private String specificationModel;

    /**
     * 是否合卷
     */
    @ApiModelProperty(value = "是否合卷")
    private String isMergeRoll;

    /**
     * 投入批次号
     */
    @ApiModelProperty("投入批次号")
    private String inputBatchCode;

    /**
     * 母卷批次号
     */
    @ApiModelProperty("母卷批次号")
    private String motherBatchCode;

    /**
     * 柱形
     */
    @ApiModelProperty("柱形")
    private String pillar;

    /**
     * 理料方向
     */
    @ApiModelProperty("理料方向")
    private String materialDirection;

    /**
     * 台号
     */
    @ApiModelProperty("台号")
    private String stationNum;

    /**
     * 产品型号
     */
    @ApiModelProperty("产品型号")
    private String productModel;

    /**
     * 产品类型
     */
    @ApiModelProperty("产品类型")
    private String productType;
    /**
     * 出库数量（辅单位）
     * */
    @Excel(name = "出库数量（辅单位）", width = 15)
    @ApiModelProperty(value = "出库数量（辅单位）")
    private BigDecimal outboundQuantityAssist;

    @ApiModelProperty(value = "辅单位")
    private String unitAssistId;

    @ApiModelProperty(value = "鞍座号")
    private String position;

    @ApiModelProperty(value = "载具编号")
    private String vehicleCode;

    @ApiModelProperty("臂号")
    private String armNo;

    @ApiModelProperty("装车人员")
    private String loadPerson;

    @ApiModelProperty("装车时间")
    private Date loadTime;

    @ApiModelProperty("装车时间")
    private Integer hasLoadCheck;

    @ApiModelProperty("任务物料id")
    private String wmsOutReceiptTaskMaterialId;

    @ApiModelProperty("车牌号")
    private String carNumber;
    @ApiModelProperty("客户单号")
    private String customerOrderNumber;

    @ApiModelProperty("提单号")
    private String blNo;

    @ApiModelProperty("箱号")
    private String boxNo;

    @ApiModelProperty("封号")
    private String titleNo;


}
